#include <iostream>
#include <string>
using namespace std;

// 点和圆的关系
// 点类
class Point
{
private:
    int x;
    int y;

public:
    //设置x
    void setX(int X)
    {
        x = X;
    }

    //获取x
    int getX()
    {
        return x;
    }
    
    //设置y
    void setY(int Y)
    {
        y = Y;
    }

    //获取y
    int getY()
    {
        return y;
    }
};

//圆类
class Circle
{
private:
    int r;//半径

    //在类中，可以让另一个类成为其成员
    Point center;//圆心

public:
    //设置半径
    void setR(int R)
    {
        r = R;
    }

    //获取半径
    int getR()
    {
        return r;
    }

    //设置圆心
    void setCenter(Point o)
    {
        center = o;
    }

    //获取圆心
    Point getCenter()
    {
        return center;
    }
};

//判断点和圆的关系
void isInCircle(Circle c, Point p)
{
    // 计算两点距离平方
    int distance =
        (c.getCenter().getX() - p.getX()) * (c.getCenter().getX() - p.getX()) +
        (c.getCenter().getY() - p.getY()) * (c.getCenter().getY() - p.getY());

    //计算半径的平方
    int rr = c.getR() * c.getR();


    if (distance == rr)
    {
        cout << "点在圆上！" << endl;
    }
    else if (distance > rr)
    {
        cout << "点在圆外！" << endl;
    }
    else
    {
        cout << "点在圆内！" << endl;
    }

}

int main()
{
    // 创建圆
    Circle c;

    // 设置r
    c.setR(10);

    // 创建圆心
    Point center;
    center.setX(10);
    center.setY(0);

    // 设置圆心
    c.setCenter(center);

    //创建点
    Point p;
    p.setX(10);
    p.setY(10);

    //判断
    isInCircle(c, p);

    return 0;
}